package com.dys.testjdk11;

/**
 * @className: com.dys.testjdk11.StringApiTest
 * @description: 新增的String处理方法
 * @author: pine cone
 * @version: v1.0.0
 * @createTime: 2024/09/04 下午10:51
 */
public class StringApiTest {
    /**
     * 这是一个main()方法,是应用程序的入口
     *
     * @param args 方法的形参列表,是一个字符串数组,包含了从命令行传递给程序的参数
     */
    public static void main(String[] args) {
        testStringMethod();
    }

    /**
     * String新增处理方法
     */
    private static void testStringMethod() {
        // 1.判断字符串是否为空白：包含转义字符
        System.out.println(" ".isBlank());
        System.out.println(" \t".isBlank());
        System.out.println("\n".isBlank());
        System.out.println("o ".isBlank());
        System.out.println("o ".isBlank());

        // 2.去除字符串首尾空白: strip-->trim
        System.out.println(" www.baidu.com ");
        System.out.println(" www.baidu.com ".strip());
        System.out.println(" www.baidu .com ".strip());
        System.out.println(" \nwww.baidu.com\t ");
        // 转义字符所造成的空白： 去除字符串首尾空白
        System.out.println(" \nwww.baidu.com\t ".strip());
        // 去除前面的换行：去除字符串首部空格
        System.out.println(" \nwww.baidu.com\t ".stripLeading());
        // 去除尾部的转义字符： 去除字符串尾部空格
        System.out.println(" \nwww.baidu.com\t ".stripTrailing());

        // 3.复制字符串
        String baidu = "baidu";
        String repeat1 = baidu.repeat(1);
        System.out.println(repeat1);
        String repeat3 = baidu.repeat(3);
        System.out.println(repeat3);

        // 4.行数统计
        String str = "ABC";
        long count = str.lines().count();
        System.out.println(count);
        String str2 = "A\nB\nC";
        System.out.println(str2.lines().count());
    }
}
